<?xml version="1.0" encoding="utf-8" ?>
<description>
  <content>
    <summary>
      Null Object is an object with defined neutral ("<c>null</c>") behavior.
      In most object-oriented languages, such as Java or C#, references may be null.
      These references need to be checked to ensure they are not null before invoking any methods,
      because one can't invoke anything on a null reference.
    </summary>
    <remarks>
      <para>
        Here we present some example code:
        <code>
          <![CDATA[
  var null = new NullObject();
  if (null.Operation()) {
	  this.ActuallyNeverHappens();
  }
  ]]>
        </code>
      </para>
      <para>
        Some other text that might be copied:Null Object is an object with
        defined neutral ("<c>null</c>") behavior.In most object-oriented languages, such as Java or C#,
        references may be null. These references need to be checked to ensure they
        are not null before invoking any methods,
        because one can't invoke anything on a null reference.
        <see cref="T:Something.Else"/>
      </para>
      <para>
        <list>
          <listheader>
            <term>Advantages</term>
          </listheader>
          <item>
            <term>Avoid NullReference exception</term>
            <description>NullReference exceptions are really nasty...</description>
          </item>
          <item>
            <term>Shows your skills</term>
            <description>Only the advanced programmers know about design patterns...</description>
          </item>
        </list>
      </para>
    </remarks>
  </content>
  <sources>
    <source>http://en.wikipedia.org/wiki/Null_object</source>
  </sources>
</description>